package com.hnx.admin.aurora.system.service;

import com.hnx.admin.aurora.system.domain.param.role.form.RoleDelForm;
import com.hnx.admin.aurora.system.domain.param.role.form.RoleForm;
import com.hnx.admin.aurora.system.domain.param.role.query.RoleQuery;
import com.hnx.admin.aurora.system.domain.param.user.form.RoleStateForm;
import com.hnx.admin.aurora.system.domain.param.user.form.UsersRoleForm;
import com.hnx.admin.aurora.system.domain.vo.role.entity.RoleVO;
import com.hnx.admin.aurora.web.json.ResultJson;

import java.util.List;

public interface RoleService {
    List<RoleVO> getRoleByUserId(String userId);
    List<RoleVO> getRoleList();

    ResultJson selectRoleList(RoleQuery role);

    ResultJson selectRoleById(String roleId);

    ResultJson updateRole(RoleForm role);

    ResultJson insertRole(RoleForm role);

    ResultJson deleteRoleByIds(RoleDelForm roleDelForm);

    ResultJson authDataScope(RoleForm role);

    ResultJson insertAuthUsers(UsersRoleForm userIds);

    ResultJson deleteAuthUsers(UsersRoleForm usersRoleForm);

    ResultJson updateRoleStatus(RoleStateForm role);

}
